package com.briup.day09;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

/**
 * @author lining
 * @date 2024/1/18 15:07
 */
public class TestAction {
    public void method(List list){
        //打印接口引用指向的实现类对象字符串信息。
        System.out.println(list);
        //接口类型引用不能调用实现类中特有的方法。
        list.add("a");
    }

    public static void main(String[] args) {
        //直接通过接口名调用静态常量
        System.out.println(Action.ID);
        System.out.println(Action.NAME);
        System.out.println(Action.ADDRESS);
        //通过借楼实现类对象，调用接口中的抽象方法
        ActionImpl a = new ActionImpl();
        a.method();
        //接口引用指向任意实现类对象 (多态的第二种写法)
        Animal d = new Dog("狗",1);
        Action b = new ActionImpl();
        Action e = new ActionImpl2();
        System.out.println("----------");
        //创建测试类对象
        TestAction t = new TestAction();
        //定义引用类型的变量作为实参
//        List list = new List(); 接口不能创建对象
//        List list = new ArrayList();
        List list = new LinkedList();
        t.method(list);
    }
}
